1. Field of the Invention
The present invention is related to substitution or migration of drive content within computer system, and more particularly, to a restoration of a server from an image stored on a network without perceptible downtime. The present invention is also related to replicating disk content between servers of a network of servers and also to swapping of disk drive storage between different computers.
2. Background Art
With the popularity and success of the Internet, server technologies are of great commercial importance today. An individual server application typically executes on a single physical host computer, servicing client requests.
In conventional systems, the data of the server is typically backed up on some storage device in the form of backup files. If the server crashes or fails, or the software becomes corrupted, it may become necessary to restore the state of the server to some previously backed-up state. If, for some reason the server physically crashes, the content of the backup should be restored on another operating server. Also, changing the content of the server may be needed when the server should be started in another operating mode, e.g., when the current operation mode of server has a lower priority then the mode defined by the data being substituted.
In many data center applications, it is often necessary to swap contents of disk drives. For example, this operation may be required when one server is being shut down, and another one is brought online. It may also be necessary to swap disk drives when one server is under-utilized, or another server is overloaded. It may also be necessary to swap the contents of disk drives in the course of data recovery procedures, or to upgrade the operating system.
Usually the conventional process consists of three steps: (1) the machine is physically shut down; (2) the data is copied from the backup storage to the storage, e.g., disk drive, used by the server; and (3) the server is restarted.
Such a procedure requires a lot of downtime, since during the substitution the server is inoperable. Also, transmission channels become overloaded when the server has to be restored with high priority. This is inefficient, disrupts normal operations, and is usually unnecessary, given that the vast majority of the data on the local drive is frequently unaltered, notwithstanding the fact that the entire local drive is backed up.
Similarly, the reverse of the process is also true—recovery using backed up data frequently takes a long time, since conventional systems require copying of the entire archived set of data (often referred to as “image”), which consumes a great deal of time and often considerable network resources.
During the restart time, the server does not perform any useful functions. Also, the process of restoring all the files of the server is time consuming. In corporate networks, a typical server can have 100 Gigabytes (or, frequently, much more than that) of data. With a transfer rate up to 100 Megabytes per second over a network, it would take approximately 1,000 seconds to transfer all the data from the backup storage to the server's local storage. This assumes that the entire network bandwidth is available for this process. Frequently, this is not the case, since only a fraction of the bandwidth may actually be available at any given time for restoring the files from backup. In practice, such transfers of data from backup to the server's local storage can take many hours.
Furthermore, it is preferred to perform the data migration with minimum overloading of network resources, particularly large scale data transfers over the local network, since such transfers consume network bandwidth, slow down useful applications and affect many users of the local network.
Also, even 1,000 seconds of downtime is an extremely long time, particularly for many mission-critical applications. For example, if the server in question is a web server that handles customer requests or sales, a period of 16-20 minutes of downtime can result in substantial lost sales. Furthermore, it is generally believed that for many e-commerce applications, the consumer attention span is relatively short, and a customer that does not receive a rapid response from a web server will simply go to a competitor's website.
Therefore, there is a need in the art for an efficient and fast data migration from backup, including restoration with a different version of an operating system.